\hypertarget{classCCipherStream}{
\section{\-C\-Cipher\-Stream \-Class \-Reference}
\label{classCCipherStream}\index{\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}}
}


{\ttfamily \#include $<$cipher\-\_\-stream.\-h$>$}

\-Inheritance diagram for \-C\-Cipher\-Stream\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classCCipherStream}
\end{center}
\end{figure}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classCCipherStream_ae62e9bc28dbf0376099b7656994fe957}{\-C\-Cipher\-Stream} ()
\item 
virtual \hyperlink{classCCipherStream_a989f121e4ad7c61209fd169116de7d22}{$\sim$\-C\-Cipher\-Stream} ()
\item 
virtual void \hyperlink{classCCipherStream_afec8a27d2cae44059773f4acd4435c21}{get\-Next} (std\-::string $\ast$, unsigned int p\-Count)=0
\item 
virtual bool \hyperlink{classCCipherStream_a1013262cd5a93200e83e4c3a1c74247b}{get\-Static\-Key} (std\-::string $\ast$, unsigned int p\-Count, unsigned int p\-Offset)=0
\item 
virtual void \hyperlink{classCCipherStream_a17a5f9b872a266ca79308d31118ab6ff}{reset} (std\-::string $\ast$p\-Stream)=0
\end{DoxyCompactItemize}


\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{classCCipherStream_ae62e9bc28dbf0376099b7656994fe957}{
\index{\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}!\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}}
\index{\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}!CCipherStream@{\-C\-Cipher\-Stream}}
\subsubsection[{\-C\-Cipher\-Stream}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-Cipher\-Stream\-::\-C\-Cipher\-Stream (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{classCCipherStream_ae62e9bc28dbf0376099b7656994fe957}
\hypertarget{classCCipherStream_a989f121e4ad7c61209fd169116de7d22}{
\index{\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}!$\sim$\-C\-Cipher\-Stream@{$\sim$\-C\-Cipher\-Stream}}
\index{$\sim$\-C\-Cipher\-Stream@{$\sim$\-C\-Cipher\-Stream}!CCipherStream@{\-C\-Cipher\-Stream}}
\subsubsection[{$\sim$\-C\-Cipher\-Stream}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-Cipher\-Stream\-::$\sim$\-C\-Cipher\-Stream (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classCCipherStream_a989f121e4ad7c61209fd169116de7d22}


\subsection{\-Member \-Function \-Documentation}
\hypertarget{classCCipherStream_afec8a27d2cae44059773f4acd4435c21}{
\index{\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}!get\-Next@{get\-Next}}
\index{get\-Next@{get\-Next}!CCipherStream@{\-C\-Cipher\-Stream}}
\subsubsection[{get\-Next}]{\setlength{\rightskip}{0pt plus 5cm}virtual void \-C\-Cipher\-Stream\-::get\-Next (
\begin{DoxyParamCaption}
\item[{std\-::string $\ast$}]{, }
\item[{unsigned int}]{p\-Count}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}pure virtual\mbox{]}}}}
\label{classCCipherStream_afec8a27d2cae44059773f4acd4435c21}
\-Gets the next p\-Count bytes of the cipher stream and writes them onto the given string.


\begin{DoxyParams}{\-Parameters}
{\em p\-Stream} & \-The std\-::string where the cipher stream bytes are written on \\
\hline
{\em p\-Count} & \-The length of the p\-Stream string and therefore the amount of bytes of the cipher stream that should be returned \\
\hline
\end{DoxyParams}


\-Implemented in \hyperlink{classCAESCipherStream_a57928fa0882245c95f17941d681d5b06}{\-C\-A\-E\-S\-Cipher\-Stream}, and \hyperlink{classCFixedCipherStream_a8df592c26f583f5cbf75cf81a4d0bbf3}{\-C\-Fixed\-Cipher\-Stream}.

\hypertarget{classCCipherStream_a1013262cd5a93200e83e4c3a1c74247b}{
\index{\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}!get\-Static\-Key@{get\-Static\-Key}}
\index{get\-Static\-Key@{get\-Static\-Key}!CCipherStream@{\-C\-Cipher\-Stream}}
\subsubsection[{get\-Static\-Key}]{\setlength{\rightskip}{0pt plus 5cm}virtual bool \-C\-Cipher\-Stream\-::get\-Static\-Key (
\begin{DoxyParamCaption}
\item[{std\-::string $\ast$}]{, }
\item[{unsigned int}]{p\-Count, }
\item[{unsigned int}]{p\-Offset}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}pure virtual\mbox{]}}}}
\label{classCCipherStream_a1013262cd5a93200e83e4c3a1c74247b}
\-Returns a fixed part of the cipher stream without taking into account the current position in the stream. \-With this method, any part of the stream can be read as often as desired.


\begin{DoxyParams}{\-Parameters}
{\em p\-Stream} & \-The std\-::string where the cipher stream bytes are written on \\
\hline
{\em p\-Count} & \-The length of the p\-Stream string and therefore the amount of bytes of the cipher stream that should be returned \\
\hline
{\em p\-Offset} & \-The offset inside the cipher stream \\
\hline
\end{DoxyParams}


\-Implemented in \hyperlink{classCAESCipherStream_a45191721c1acb7198d4abf9441a56878}{\-C\-A\-E\-S\-Cipher\-Stream}, and \hyperlink{classCFixedCipherStream_aa61a6d848dcf052b644abcc5164555ca}{\-C\-Fixed\-Cipher\-Stream}.

\hypertarget{classCCipherStream_a17a5f9b872a266ca79308d31118ab6ff}{
\index{\-C\-Cipher\-Stream@{\-C\-Cipher\-Stream}!reset@{reset}}
\index{reset@{reset}!CCipherStream@{\-C\-Cipher\-Stream}}
\subsubsection[{reset}]{\setlength{\rightskip}{0pt plus 5cm}virtual void \-C\-Cipher\-Stream\-::reset (
\begin{DoxyParamCaption}
\item[{std\-::string $\ast$}]{p\-Stream}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}pure virtual\mbox{]}}}}
\label{classCCipherStream_a17a5f9b872a266ca79308d31118ab6ff}
\-Resets the cipher stream with the given password. \-It basically does the same as creating a new object of this class.


\begin{DoxyParams}{\-Parameters}
{\em p\-Password} & \-The password \\
\hline
\end{DoxyParams}


\-Implemented in \hyperlink{classCAESCipherStream_a9a10464c2dbf9d8e1357783897c5fde9}{\-C\-A\-E\-S\-Cipher\-Stream}, and \hyperlink{classCFixedCipherStream_a9ba7b7a9714b7ee644deb95bac89ca01}{\-C\-Fixed\-Cipher\-Stream}.



\-The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
\hyperlink{cipher__stream_8h}{cipher\-\_\-stream.\-h}\item 
\hyperlink{cipher__stream_8cxx}{cipher\-\_\-stream.\-cxx}\end{DoxyCompactItemize}
